package com.hxs.hxsserver.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.hxs.hxsserver.domain.dto.IdDTO;
import com.hxs.hxsserver.domain.dto.device.*;
import com.hxs.hxsserver.domain.entity.relay.RelayLog;
import com.hxs.hxsserver.domain.entity.user.User;

import java.util.List;

/**
 * @author liuchuan
 * @create 2024/10/8
 */
public interface RelayService {
    IPage<RelayDTO> getRelayList(QueryRelayListDTO queryRelayListDTO);

    Boolean updateRelay(RelayDTO relayDTO);

    Boolean deleteRelay(IdDTO factorDTO);

    RelayDTO getRelayById(IdDTO idDTO);

    Boolean insertRelay(RelayDTO relayDTO);

    Boolean relayStatusManage(RelayManageDTO relayManageDTO,int id);

    IPage<RelayLog> getRelayLog(DeviceStatusQueryDTO deviceListQueryDTO);

    Boolean insertRelayMode(RelayModeInsertReqDTO relayDTO, User user);

    List<RelayModeInsertReturnDTO> getRelayModeListByMode(QueryRelayModeListDTO queryRelayModeListDTO);

    Boolean updateRelayModeById(RelayModeInsertReturnDTO relayDTO, User user);

    Boolean deleteRelayModeByIds(String ids);
}
